package com.ruoyi.equ.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 移动记录对象 equ_move
 * 
 * @author ruoyi
 * @date 2025-11-05
 */
public class EquMove extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 移动申请id */
    @Excel(name = "移动申请id")
    private Long moveId;

    /** 资产设备id */
    @Excel(name = "资产设备id")
    private Long assetId;

    /** 移动类型 */
    @Excel(name = "移动类型")
    private String moveType;

    /** 移动依据（格式：移动类型+原因+移出/移入科室+原/新存放地点，如“永久调拨+科室业务调整+内科/外科+内科楼302/外科楼205”） */
    @Excel(name = "移动依据", readConverterExp = "格=式：移动类型+原因+移出/移入科室+原/新存放地点，如“永久调拨+科室业务调整+内科/外科+内科楼302/外科楼205”")
    private String moveBasis;

    /** 执行信息 */
    @Excel(name = "执行信息")
    private String executeInfo;

    /** 移动后状态 */
    @Excel(name = "移动后状态")
    private String moveAfterStatus;

    /** 移动完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "移动完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date finishTime;

    /** 附件链接 */
    @Excel(name = "附件链接")
    private String fileUrls;

    public void setMoveId(Long moveId) 
    {
        this.moveId = moveId;
    }

    public Long getMoveId() 
    {
        return moveId;
    }

    public void setAssetId(Long assetId) 
    {
        this.assetId = assetId;
    }

    public Long getAssetId() 
    {
        return assetId;
    }

    public void setMoveType(String moveType) 
    {
        this.moveType = moveType;
    }

    public String getMoveType() 
    {
        return moveType;
    }

    public void setMoveBasis(String moveBasis) 
    {
        this.moveBasis = moveBasis;
    }

    public String getMoveBasis() 
    {
        return moveBasis;
    }

    public void setExecuteInfo(String executeInfo) 
    {
        this.executeInfo = executeInfo;
    }

    public String getExecuteInfo() 
    {
        return executeInfo;
    }

    public void setMoveAfterStatus(String moveAfterStatus) 
    {
        this.moveAfterStatus = moveAfterStatus;
    }

    public String getMoveAfterStatus() 
    {
        return moveAfterStatus;
    }

    public void setFinishTime(Date finishTime) 
    {
        this.finishTime = finishTime;
    }

    public Date getFinishTime() 
    {
        return finishTime;
    }

    public void setFileUrls(String fileUrls) 
    {
        this.fileUrls = fileUrls;
    }

    public String getFileUrls() 
    {
        return fileUrls;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("moveId", getMoveId())
            .append("assetId", getAssetId())
            .append("moveType", getMoveType())
            .append("moveBasis", getMoveBasis())
            .append("executeInfo", getExecuteInfo())
            .append("moveAfterStatus", getMoveAfterStatus())
            .append("finishTime", getFinishTime())
            .append("fileUrls", getFileUrls())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
